Wiring design method for wiring board

ABSTRACT

A wiring design method for a wiring board comprises, if design rule errors are found in the wiring design, selecting one of the design rule errors as a selected design rule error, specifying a predetermined number of the second connection terminals as selected second connection terminals that correspond to the selected design rule error, and moving the selected second connection terminals to predetermined coordinate positions. Each time when the selected second connection terminals are moved to the post-movement coordinate positions, the method comprises connecting the second connection terminals and the first connection terminals, conducting the design rule check, and determining whether no design rule errors are detected newly and the selected design rule error is not detected either.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is based upon and claims the benefit of priority fromthe prior Japanese Patent Application No. 2009-44319, filed on Feb. 26,2009, the entire contents of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a method for wiring design for avariety of wiring boards such as a wiring board of semiconductor devicepackages and a printed circuit board (PCB) of electric apparatuses.

2. Background Art

A variety of wiring boards each of which has a plurality of wiringsurfaces are available such as a semiconductor package wiring board anda PCB for various electric apparatuses.

For these wiring boards, the wiring design is desired to be of a highintegration and a high accuracy. This desire may be accompanied by atendency of taking a longer time to design the wiring.

Accordingly, to shorten the design time, in the past, a method wasemployed for automatically designing the wiring by using an automaticwiring design apparatus. This shortens the wiring design time than themethod of a designer designing the entire wiring manually. However, asdescribed later, such an automatic wiring method by use of the automaticwiring design apparatus may give rise to a design error referred to as adesign rule error in some cases. In such a case, it is difficult to workout a design in such a manner as to eliminate design rule errors byusing the automatic wiring design apparatus. Thus, the designer workedout a design to eliminate design rule errors manually. However, wiring,if it is of a high integration, has taken a prolonged time for manualdesign by the designer, thus resulting in a long time to designcompletely.

A method for automatically eliminating the design rule errors isdisclosed in Japanese Patent Laid-Open No. 2007-287023.

SUMMARY OF THE INVENTION

According to an aspect of embodiments of the present invention, there isprovided a wiring design method for a wiring board, the wiring boardcomprising first connection terminals and second connection terminalsformed on a first surface of the wiring board, the first connectionterminals and the second connection terminals being correlated with eachother one-to-one, the method comprising: connecting the first connectionterminals and the second connection terminals, respectively, on thefirst surface; and conducting design rule check; if at least one designrule error is found in an obtained result of the design rule check,selecting one design rule error from the obtained result of the designrule check as a selected design rule error; specifying a predeterminednumber of the second connection terminals as selected second connectionterminals that correspond to the selected design rule error; moving theselected second connection terminals to predetermined coordinatepositions on the first surface, respectively, to form several connectingpatterns; and for each of connecting patterns, connecting the secondconnection terminals including the selected second connection terminalsand the first connection terminals correlated with the second connectionterminals including the selected second connection terminals,respectively, on the first surface; conducting design rule check; anddetermining whether neither design rule errors are detected newly northe selected design rule error is detected.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram showing an automatic wiring design apparatusaccording to embodiments of the present invention;

FIG. 2 is an outlined flowchart of a wiring design method according tothe embodiments of the present invention;

FIG. 3 is a flowchart showing the wiring design method according to afirst embodiment;

FIG. 4 is a flowchart showing the wiring design method according to asecond embodiment;

FIG. 5 is a flowchart showing the wiring design method according to athird embodiment;

FIG. 6 is a flowchart showing the wiring design method according to afourth embodiment;

FIG. 7 is a flowchart showing the wiring design method according to afifth embodiment;

FIGS. 8A and 8B are partial structure diagrams of a BGA package;

FIG. 9 is an entire drawing for explaining one example of the wiringdesign method for a wiring board;

FIG. 10 is a partial drawing for explaining the one example of thewiring design method for the wiring board;

FIG. 11 is a drawing for showing one example of design rule errors; and

FIGS. 12A and 12B are drawings for explaining a reason for a differencein number of wire connections passing between neighboring vias which iscaused by a connecting angle.

DETAILED DESCRIPTION OF THE INVENTION

Hereafter, before describing embodiments of the present invention, adescription will be given of the background to developments of thepresent invention by the present inventor.

First, the present inventor analyzed his own wiring design methodperformed in the past.

The method for designing wiring on a wiring board will be describedsimply. As an example, it will be described as a method for wiringdesign on a wiring board of ball grid array (BGA) packages. It is to benoted that in the present invention, the wiring boards to be designedare not limited to the wiring boards for the semiconductor packages.

First, the structure of the BGA packages will be described simply. FIGS.8A and 8B show a part of the BGA package. FIG. 8A is its partial sideview and FIG. 8B is its partial plan view. The BGA package comprises awiring board 28 having two wiring surfaces (first surface 28 a andsecond surface 28 b) that face each other. The first surface 28 aincludes on it a semiconductor chip 23 having connection terminals,bonding fingers (semiconductor chip connection terminals) 25 which areconnected through wires 24 with the connection terminals formed on thesemiconductor chip 23, and connections 21 a which are connected with thebonding fingers 25 electrically. The second surface 28 b includes on itball pads 27 on which solder balls (external device connectionterminals) to be directly connected with an external device outside theBGA package are mounted respectively and connections 21 b which areconnected with the ball pads 27 electrically. Further, the wiring board28 have vias 22 which are formed from the first surface 28 a through thesecond surface 28 b of the wiring board 28 in order to connect theconnections 21 a disposed on the first surface 28 a and the connections21 b disposed on the second surface 28 b.

Next, a wiring design method by use of an automatic wiring designapparatus will be described for designing, in particular, a wiringdesign method for the connections 21 a on the first surface 28 a of sucha BGA package wiring board 28, with reference to FIGS. 9 and 10. Thefollowing automatic wiring design apparatus and the wiring design methodby use of it are one example.

FIG. 9 is an outlined drawing of the first surface 28 a. In it, only thevia 22, the bonding finger 25, the semiconductor chip 23, and the ballpad 27 are shown, and the wiring 21 a and the wire 24 are omitted. PartP of such a first surface 28 a as shown in FIG. 9 is shows in FIG. 10 inmore detail in order to describe the method for designing the connection21 a.

As the first step, before designing the connections, the followingpreparation will be performed.

As shown in FIG. 10, the bonding fingers 25 are each assigned numbersbeforehand. Specifically, the bonding fingers 25 are numbered inaccordance with an arrangement thereof. (For example, as shown in FIG.10, if one of the bonding fingers 25 is assigned number 1, itsright-hand neighbor bonding finger 25 on the paper is assigned number2.) These numbers are appellations to specify the bonding fingers 25 andused to give the relationship of connections among the bonding fingers25, the connections 21, the vias 22, and the ball pads 27, so that basedon those numbers, a central processing unit of the automatic wiringdesign apparatus may perform processing to define wiring paths of thewiring connections 21 a.

Next, the ball pads 27 to be connected to the corresponding bondingfingers 25 are defined. Specifically, to define the relationship for thefinal connections between the bonding fingers 25 and the correspondingball pads 27, the numbers of the ball fingers 25 are assigned similarlyto the corresponding ball pads 27, respectively. It is to be noted thatthe connections between the respective bonding fingers 25 and thecorresponding ball pads 27 are predetermined in accordance with how theconnection terminals of the semiconductor chip 23 are connected with theexternal device outside the BGA package. (However, the connectionrelationship between the bonding fingers 25 and the corresponding ballpads 27 is limited in order that the connections 21 a may not cross eachother. The limitation may be, for example, such that the larger thevalues of the numbers assigned to the ball pads 27 are, the morerightward they are disposed on the paper of FIG. 10.)

Next, on the first surface 28 a, virtual XY coordinate axes are given.The X coordinate axis is parallel to the line of the bonding fingers 25.The Y coordinate axis crosses the X coordinate axis perpendicularly.More specifically, the orientations of these coordinate axes of X and Yare assumed to be, for example, from the left to the right and from thetop to the bottom on the paper respectively.

Further, a virtual grid is created for the central processing unit ofthe automatic wiring design apparatus to perform arithmetic processing.For example, as shown in FIG. 10, on the second surface 28 b, the ballpads 27 are disposed regularly (this arrangement is predetermined by theshape of the semiconductor package). Accordingly, the virtual grid hasthe same inter-grid line spacing as that between the ball pads 27disposed regularly (the spacing is larger than the diameter of each ofthe vias 22), which grid lines are supposed to be divided into twoorientation groups that intersect with each other perpendicularly. Thegrid lines are disposed so that their intersections may not overlap withthe ball pads 27. Of these grid lines thus disposed, those parallel withthe row of the bonding fingers 25, in other words, the grid linesparallel with the X coordinate axis are assumed to be line GXn (n:natural number). Also, the grid lines that intersect with line GXnperpendicularly are assumed to be line GYn (n: natural number). Further,these lines GXn are numbered sequentially. The numbers are assumed to beassigned in an ascending order from line GXn that is disposed closest tothe row of the bonding fingers 25. That is, the grid lines will be GX1,GX2, GX3, . . . and GXn starting from that closest to the row of thebonding fingers 25.

As the second step, the designer supplies the following input data to aninput unit of the automatic wiring design apparatus:

the numbers and position coordinates of the bonding fingers 25; and

the numbers and coordinate positions of the ball pads 27.

Of these input data, the position coordinates of the bonding fingers 25and those of the ball pads 27 are predetermined by the shape of thesemiconductor package and the size of the semiconductor chip 23 mountedon the first surface 28 a.

As the third step, the designer supplies rough position coordinates ofthe vias 22 to the input unit of the automatic wiring design apparatus.

This operation is detailed as follows.

A positional relationship between the ball pads 27 and the correspondingvias 22 for connection is presumed. For example, each of the vias 22corresponding to each of the ball pad 27 is presumed to be present atthe intersection between the upper right grid lines nearest the ball pad27. Based on such a presumption, the vias 22 are disposed on the wiringboard 28.

In order to make clear the connection relationship between the ball pads27 and the corresponding vias to be connected to each of the ball pads27, the numbers of the ball pads 27 are assigned similarly to thecorresponding to the vias 22 respectively.

The numbers of the vias 22 and their position coordinates are suppliedto the input unit as input data.

In order to define a connection relationship between the bonding fingers25 and the connections 21 a to be connected therewith electrically, thenumbers of the bonding fingers 25 are assigned similarly to thecorresponding to connections 21 a respectively.

As the fourth step, based on the input data and the limiting conditionsupplied to the input unit, a wiring module in the central processingunit defines rough positions (topologies) of the connections 21 a on thefirst surface 28 a. The topology of each of the connections 21 a isdesigned so that each of the connections 21 a may extend from each ofthe bonding fingers 25 toward each of the vias 22 that corresponds to itone-to-one. That is, as shown in FIG. 10, each connection 21 a extendsas crossing lines GXn sequentially. Further, the topology of each of theconnections 21 a is defined based on the limiting condition.

The limiting condition is such that the connections 21 a and the vias 22may not overlap with each other and the connections 21 a may not overlapwith each other. In other words, the limiting conditions rule them tothe effect that the magnitude relation between the numbers assigned tothe connections 21 a and the vias 22 and that between the coordinates (Xcoordinates) of the connections 21 a on lines GXn and the coordinates (Xcoordinates) of the vias 22 a may be the same as each other. It will bedescribed in more detail as follows.

It is ruled that the larger the number assigned to each connection 21 ais, the larger an X coordinate (as described before, in FIG. 10, the Xcoordinate value increases as it goes to the right on the paper of FIG.10) at which this connection 21 a crosses each line GXn must become.That is, in FIG. 10, the larger the number assigned to each connection21 a is, the more rightward it is disposed on the paper.

It is ruled that when each connection 21 a crosses each line GXn, eachconnection 21 a must pass through between the via 22 that is disposed onthis line GXn and that is assigned a number which is smaller than andmost closest to the number assigned to this connection 21 a and the via22 that is disposed on this line GXn and that is assigned a number whichis larger than and most closest to the number assigned to thisconnection 21 a.

For example, under this rule, if via [m−2] and via [m+2] (m: naturalnumber) are disposed on line GXk (k: natural number), connection [m−1],connection[m], and connection[m+1] must cross line GXk between these twovias.

By using such a limiting rule, the topology of the connection 21 a isdetermined that rules which connection 21 a must pass through betweenwhich vias 22 on which line GXn.

As the fifth step, based on the topology of each connection 21 a, itsdetailed position coordinates are defined in accordance with apredetermined rule. The predetermined rule is a condition, for example,that when a plurality of the connections 21 a pass through between thetwo vias 22 which neighbor each other on the same line GXn, the Xcoordinate must be defined so as to give the same spacing between oneconnection 21 a and another. Then, the detailed coordinates of thebonding fingers 25 and the connections 21 a on lines GXn are defined todefine also the wiring path of the connections 21 a by linking the vias22, thus completing wiring design of the connections 21 a on the firstsurface 28 a.

It is to be noted that wiring design of the connections 21 b on thesecond surface 28 b will be completed by directly connectingpredetermined vias and predetermined ball pads 27 to each other.

As the sixth step, design rule check (DRC) is conducted on the thusdesigned connections 21 a and 21 b. The design rule check means to checkwhether wiring is designed in accordance with rules which are referredto as design rules and must be followed by the connections 21 a and 21 band the via holes 22. More specifically, check is conducted all over thefirst surface 28 a and the second surface 28 b about whether the wiringspacing between the connections 21 a and 21 b and the spacing betweeneach of the connections 21 a and 21 b and each of the vias 22 are atleast predetermined value respectively. (In other words, in contrast todesigning of the connections 21 a in which attention was paid only tothe coordinates on lines GXn, the design rule check covers theconnections 21 a and the vias 22 all over the first surface 28 a.)

Then, as shown in FIG. 11, a position (design rule check error: DRCerror) 39 where the design rules error presents, if detected, will bedisplayed.

As the seventh step, if at least one design rule error is detected, thedesigner manually redesigns wiring in order to eliminate the design ruleerrors. If the design rule errors are all eliminated by suchredesigning, the wiring design is completed.

However, as described before, if the designer eliminates the design ruleerrors by hand, it will take a long time.

Accordingly, the present inventor tried to work out a wiring designmethod that designs wiring taking into account the design rules from thebeginning in order to avoid the occurrence of a design rule error fromthe start.

First, the present inventor tried to incorporate design rules into awiring design method as one of its limiting conditions. The limitingconditions to represent the design rules may be, for example, asfollows. One design rule may be such that the spacing between theconnections 21 a or between the connection 21 a and the via 22 must beat least a predetermined value. If this design rule translated into thelimiting conditions which have been used in the automatic wiring designapparatus, the limiting condition is a condition which limits the numberof the connections 21 a that pass through between the two vias 22neighboring on the same line GXn. However, this limiting condition isdifficult to conduct, that is, it is difficult to previously define thenumber of the connections 21 a that can pass through between the twoneighboring vias 22 on the same line GXn. This will be described belowwith reference to FIGS. 12A and 12B. Generally, the connections 21 a onthe first surface 28 s can be designed at an arbitrary angle. If thespacing between the connections 21 a and that between the connection 21a and the via 22 are made constant, the number of the connections 21 athat can pass through between the two neighboring vias 22 on the sameline GXn is four in FIG. 12A, for example, whereas in FIG. 12B, thenumber of the connections 21 a that can pass through between the twoneighboring vias 22 is three. Thus, there occurs a difference in numberof the connections 21 a that can pass through between the twoneighboring vias 22 owing to a difference in angle of the connections 21a despite that the distance between the two neighboring vias 22 is thesame. That is, since the connections 21 a can be designed at anarbitrary angle, it is difficult to define the number of the connections21 a that can pass through between the two neighboring vias 22.Therefore, it is difficult to make limiting conditions that reflect suchdesign rules into the method for designing wiring of the connections 21a by using the automatic wiring design apparatus.

With these, the present inventor considered it would be difficult toobtain such a wiring design method as not to give rise to design ruleerrors from the beginning.

Accordingly, taking into account the difficulty in avoiding theoccurrence of a design rule error from the beginning, the presentinventor tried to work out a method for designing wiring once and thenautomatically eliminating the design rule errors that occurred.According to such a method, the automatic wiring design apparatus neednot be changed so much and, moreover, design rule errors can beeliminated automatically in designing, thus significantly shortening thetime it takes to complete wiring design.

In the case of such design to eliminate design rule errorsautomatically, it is necessary to specify the causes for design ruleerrors. However, on the high integration wired wiring board, there maybe cases where composite factors are mixed in occurrence of design ruleerrors, so that they cannot easily be specified.

Accordingly, the present inventor tentatively defined that the designrule errors are all caused by the positions of the vias 22. Further,based on this tentative definition, he considered to select vias byutilizing the automatic wiring design apparatus, move them, and designwiring by utilizing the automatic wiring design apparatus again, thuseliminating the design rule errors.

It is to be noted that in the following description, the expression of“specifying a via as that which caused a design rule error” is used tomean “presuming a via as that which caused a design rule error”.

Also, the present inventor considered to specify a causal via forselected one design rule error (selected design rule error) bysequentially deleting the vias 22 from the wiring board 28 and, in thiscondition (in a condition where the vias 22 are deleted), designing theconnections 21 a and 21 b by the automatic wiring design apparatus, andthen conducting design rule check to confirm that the selected designrule error is eliminated. Further, the present inventor considered tomove the specified causal via for the selected design rule error andthen design wiring by using the automatic wiring design apparatus, thuseliminating the selected design rule error.

It is thus possible to use the automatic wiring design apparatus withoutchanging it so much. Further, various types of the automatic wiringdesign apparatuses can be used.

A description will be given of embodiments of the present invention.

(First Embodiment)

An automatic design apparatus 1 according to a first embodiment of thepresent invention comprises an input unit 11 to which input data issupplied, a central processing unit (CPU) 10 which carries out wiringdesign, a display unit 12 and an output unit 13 which design results aredisplayed on and provided to, a program storage unit 16 which stores awiring design program, and a data storage unit 15 which stores varioustypes of data about wiring design, as shown in FIG. 1. The input unit11, the display unit 12, and the output unit 13 are connected through aninput/output control unit 14 to the CPU 10, while the program storageunit 16 and the data storage unit 15 are directly connected to the CPU10. The CPU 10 comprises a design rule error selection module 101, a viaselection module 102, a via deletion module 103, a wiring module 104, adesign rule check module 105, a via movement module 106, and a wiringdesign result reception module 107. These modules will be used by awiring design method to be described later.

The wiring design method according to the first embodiment includes thefollowing four major steps. The flow of those four major steps is shownin a flowchart of FIG. 2. These major steps are detailed as follows.

(Step 1) All of necessary vias 22 are disposed on a wiring boardtentatively and, in this condition, first wiring design is performed onconnections 21 a on a first surface 28 a by using the wiring module 104.Wiring design of connections 21 b on a second surface 21 b is performedby directly connecting predetermined vias 22 and predetermined ball pads27 respectively. Further, design rule check is conducted on the obtainedwiring design of the connections 21 a and 21 b by using the design rulecheck module 105.

(Step 2) Determination is made as to whether at least one design ruleerror is detected as a result of conducting design rule check at step 1.

If at least one design rule error is detected, an advance is made tostep 3.

On the other hand, no design rule error is detected, a result of thewiring design performed at step 1 is indicated on the display unit 12 asa final wiring design result and also provided to the output unit 13,thus ending wiring design.

(Step 3) One selected design rule error is selected with the design ruleerror selection module 101 from among the design rule errors detected atstep 1, to specify a causal via for the selected design rule error. Step3 will be described in detail later.

(Step 4) The causal via is moved and, in this condition, wiring designis performed to then conduct design rule check, thus providing suchwiring design as to eliminate the selected design rule error. Step 4will be described in detail later.

Further, according to the first embodiment, after performing this seriesof four major steps, steps 3 and 4 are repeated in this order until allthe design rule errors are eliminated.

As described before, the wiring design method according to the presentfirst embodiment is based on the presumption that the design rule errorsare all caused by the vias 22.

Steps 3 to 4 in wiring design in the first embodiment are described indetail as follows. A detailed flow of these steps of 3 and 4 is shown asa flowchart in FIG. 3.

(Step 3-1) If a design rule error is detected at step 1, one of thedetected design rule errors is selected as a selected design rule errorby using the design rule error selection module 101. Next, an advance ismade to step 3-2.

(Step 3-2) Determination is made as to whether a selected design ruleerror is selected at step 3-1.

If the selected design rule error is selected, an advance is made tostep 3-3.

On the other hand, no selected design rule error is selected, wiringdesign ends.

(Step 3-3) One of the vias 22 formed in the wiring board 28 is selectedas a selection via by using the via selection module 102. Next, theselection via is deleted using the via deletion module 103. Next, anadvance is made to step 3-4.

(Step 3-4) Determination is made as to whether the selection via isselected and deleted.

If the selection via is selected and deleted, an advance is made to step3-5.

On the other hand, if no selection via is selected or the selection viais yet to be deleted, a return is made to step 3-1.

(Step 3-5) In a condition where the selection via is deleted, wiringdesign of the connections 21 a on the first surface 28 a is performed byusing the wiring module 104. Wiring design of the connections 21 b onthe second surface 28 b is also performed by using the wiring module 104in the condition where the selection via is deleted. Next, an advance ismade to step 3-6.

(Step 3-6) Design rule check is conducted on the wiring results of theconnections 21 a and 21 b obtained at step 3-5 by using the design rulecheck module 105.

If the selected design rule error selected at step 3-1 is eliminated (noselected design rule error is detected) as a result of thus conductingdesign rule check, an advance is made to step 3-7.

On the other hand, if the selected design rule error is yet to beeliminated (a selected design rule error is detected), an advance ismade to step 3-3.

Processing from steps 3-3 to 3-6 is repeated until the selected designrule errors are eliminated. That is, the vias 22 in the wiring board 28are all selected and deleted sequentially and, in this condition, wiringdesign is performed on the connections 21 a and 21 b and design rulecheck is conducted on the thus obtained connections 21 a and 21 b todetermine whether the selected design rule errors are eliminated,repeatedly.

(Step 3-7) The selection via is specified as a causal via for theselected design rule error. An advance is made to step 4-1.

(Step 4-1) The causal via specified at step 3-7 is moved to one ofpredetermined candidate movement destinations by using the via movementmodule 106. Next, an advance is made to step 4-2.

The candidate movement destination refers to an empty space on thewiring board 28 (position which does not overlap with the ball pads 27and at which neither the connections 21 a nor the other vias 22 arepresent) that is distant by a predetermined distance from the currentposition of the causal via. For example, the candidate movementdestinations are presumed to be a plurality of empty spaces which are ina range distant by about one to several cells of the aforesaid virtualgrid from it. Further, such a space is divided into grid cells each ofwhich has a predetermined size, which are then numbered and defined ascandidate movement destinations. One of these candidate movementdestinations can be selected so that the causal via may be moved at itsposition.

(Step 4-2) Determination is made as to whether the causal via is moved.

If the causal via is moved, an advance is made to step 4-3.

On the other hand, if the causal via is yet to be moved, a return ismade to step 3-1.

(Step 4-3) Wiring design of the connections 21 a on the first surface 28a is performed by using the wiring module 104. Subsequently, wiringdesign of the connections 21 b on the second surface 28 b is performed.Next, an advance is made to step 4-4.

(Step 4-4) Design rule check is conducted using the design rule checkmodule 105 on the connections 21 a and 21 b on which design wasperformed at step 4-3.

If the selected design rule error is eliminated and no design rule erroris detected newly, an advance is made to step 4-5.

On the other hand, if the selected design rule error is yet to beeliminated and/or a new design rule error is detected, a return is madeto step 4-1. Then, processing from steps 4-1 to 4-4 is repeated untilthe selected design rule error is eliminated and no design rule error isdetected newly.

(Step 4-5) The wiring design results obtained at step 4-3 are input intothe data storage unit 15 through the design result reception module 107.

Moreover, processing from steps 3-1 to 4-5 is repeated until the designrule errors are all eliminated. Then, the wiring design results at thetime when the design rule errors are all eliminated are indicated on thedisplay unit 12 as the final wiring design result and also provided tothe output unit 13, thus completing wiring design.

It is to be noted that if any one of the design rule errors is noteliminated even after performing wiring design of the present inventionin such a manner, the designer manually designs such wiring as toeliminate all of the design rule errors. If any of the design ruleerrors are reduced by the present invention even manually by thedesigner finally, it will relieve him of manual designing to someextent, thus leading to a shortened design time.

(Second Embodiment)

A description will be given of a second embodiment. In the secondembodiment, step 2 (step of specifying causal vias) has been improved.At step 2 in the first embodiment, based on the presumption that all ofvias 22 on a wiring board 28 are the possible causal via for design ruleerrors, those vias have been deleted one by one, repeatedly. Incontrast, at step 2 in the second embodiment, the possible causal vias22 for design rule errors are limited beforehand and then deleted one byone, repeatedly. This gives the second embodiment an advantage ofshortening the time to specify the causal vias as compared to the firstembodiment.

More specifically, in the second embodiment, the possible causal vias 22for a selected design rule error are previously limited to those thatare presumed to be present in a range distant by a predetermineddistance from the position of the selected design rule error (forexample, they are limited to those vias 22 that are to be deletedbecause these vias are distant by several 100 μm or less from theposition of the selected design rule error). Then, those vias 22 presentin such a range are deleted one by one sequentially. The presentinventor has uniquely known from experience that in many cases thecausal vias 22 for a selected design rule error exists near the selecteddesign rule error, so that this unique knowledge of the present inventoris utilized in the second embodiment.

In detail, the wiring design method in the second embodiment is the sameas the first embodiment except that step 3-3 is replaced by step 3-3B. Aflow of this design is shown as a flowchart of FIG. 4. A descriptionwill be given below only of step 3-3B, which is peculiar to the secondembodiment.

(Step 3-3B) One of those vias 22 that are within a predetermined rangefrom a selected design rule error selected at step S3-1 is selected as aselected via by using a via selection module 102. Then, the selected viais deleted using the via deletion module 103. Next, an advance is madeto step 3-4.

(Third Embodiment)

A description will be given of a third embodiment. In the firstembodiment, a causal via has been specified based on the presumptionthat one causal via 22 corresponds to one design rule error. However,actually, the one-to-one correspondence does not always hold true forthe design rule errors and the causal vias; in some cases, one designrule error may be caused by a plurality of the vias 22. Such a situationis accommodated by the third embodiment.

The wiring design method in the third embodiment is the same as thefirst embodiment except that step 3-3 in the first embodiment isreplaced by step 3-3C. A flow of this design is shown as a flowchart ofFIG. 5. A detailed description will be given below only of step 3-3C,which is peculiar to the third embodiment.

(Step 3-3C) A predetermined number of vias 22 are selected from amongthose in a wiring board 28 as a plurality of selected vias by using avia selection module 102. (The predetermined number may be, for example,about two or three.) Further, the plurality of selected vias are deletedat a time by using a via deletion module 103. Next, an advance is madeto step 3-4.

(Fourth Embodiment)

A description will be given of a fourth embodiment.

In the aforesaid embodiments, to specify the causal vias 22 for aselected design rule error, the vias 22 have been deleted sequentiallyand, in this condition, wiring design has been performed on connections21 a and 21 b, while conducting design rule check until the selecteddesign rule error is eliminated. However, even if the vias 22 in awiring board 28 are all deleted one by one sequentially, the selecteddesign rule error may not be eliminated in some cases. Even in such acase, wiring design is made possible in the fourth embodiment. Morespecifically, in the fourth embodiment, in a case where no causal viascan be specified in any of the preceding embodiments described above,one of the vias is selected as selected via and deleted, if the numberof design rule errors detected in wiring design performed after selectedvias are deleted is smaller than the number of the design rule errorsdetected at step 1 (first detected design rule error count), wiringdesign is permitted to go based on the presumption that the selectedvias have caused the selected design rule error.

In the fourth embodiment, the medium step of 3-6 in the first embodimenthas been replaced by three minor steps of 3-6-1D through 3-6-3D. Thatis, the fourth embodiment is the same as the first embodiment except forsteps 3-6-1D through 3-6-3D. A flow of the wiring design is shown as aflowchart of FIG. 6. A detailed description will be given below only ofthe steps which are peculiar to the fourth embodiment.

(Step 3-6-1D) Design rule check is conducted using a design rule checkmodule 105 on the connections 21 a and 21 b designed at step 3-5.

As a result of design rule check thus conducted, if the selected designrule error selected at step 3-1 is eliminated (if no selected designrule error is detected), an advance is made to step 3-7.

On the other hand, if the selected design rule error is yet to beeliminated (if a selected design rule error is detected), an advance ismade to step 3-6-2D.

(Step 3-6-2D) If the selected design rule error is yet to be eliminatedbut the number of the design rule errors detected at step 3-6-1D issmaller than that detected at step 1, the selected via is input into asecond best candidate list. Then, a return is made to step 3-3.

On the other hand, if the number of the design rule errors is notsmaller than that detected at step 1, a return is made to step 3-3directly.

(Step 3-6-3D) If the selected design rule error is not eliminated, inother words, no causal via can be specified even by repeating theprocessing of steps 3-3 through 3-6-2D, finally, one selected via isselected from the second best via candidate list, to make an advance tostep 3-7. (For example, if the second best via candidate list containsinformation of a plurality of selected vias, such a selected via isselected as to give the smallest number of design rule errorscorresponding thereto in the second best candidate via list as comparedto the number of the design rule errors detected at step 1.)

(Fifth Embodiment)

A description will be given of a fifth embodiment. According to thewiring design methods described above, even if the specified causal viasfor a selected design rule error selected at step 2-1 have sequentiallybeen moved to all of candidate movement destinations on a wiring board28, the selected design rule error is still yet to be eliminated in somecases. Even in such a case, wiring design is made possible in the fifthembodiment.

More specifically, in the wiring design method according to the fifthembodiment, even in a case where a selected design rule error is yet tobe eliminated, if the number of the design rule errors is smaller thanthe number (first detected design rule error count) of the design ruleerrors detected at step 1, positions of the causal vias and results ofthe wiring design at this time are input into a data storage unit 15through a design result reception module 107. Then, finally, if theselected design rule error is not eliminated even by moving the causalvias to any position, one of the wiring design results is selected fromthe data storage unit 15 and output as a final wiring design result.

In the fifth embodiment, the medium step of 4-4 in the second embodimenthas been replaced by three minor steps of 4-4-1E, 4-4-2E, and 4-4-3E.That is, the fifth embodiment is the same as the first embodiment exceptfor steps 4-4-1E through 4-4-3E. A flow of the design is shown as aflowchart of FIG. 7. A detailed description will be given below only ofthe steps 4-4-1E and 4-4-3E which are peculiar to the fifth embodiment.

(Step 4-4-1E) Design rule check is conducted using a design rule checkmodule 105 on connections 21 a and 21 b designed at step 4-3.

If the selected design rule error is eliminated and no design rule erroris detected newly, an advance is made to step 4-5.

On the other hand, if the selected design rule error is yet to beeliminated and/or a new design rule error is detected, an advance ismade to step 4-4-2E.

(Step 4-4-2E) If the selected design rule error is yet to be eliminatedbut the number of the detected design rule errors is smaller than thatdetected at step 1, information of the candidate movement destinationsis input into a second best candidate movement destination positionslist, to make an advance to step 4-1.

On the other hand, if the number of the detected design rule errors isnot smaller than that detected at step 1, a return is made to step 4-1directly.

(Step 4-4-3E) If the selected design rule error is not eliminatedfinally even if by repeating processing of steps 4-1 through 4-4-2E, onecandidate movement destination is selected from the second bestcandidate movement destination position list. (For example, if thesecond best candidate movement destination position list contains aplurality of possible candidate movement destination positions, such acandidate movement destination position is selected as to give thesmallest number of design rule errors corresponding thereto as comparedto the number of the design rule errors detected at step 1.) An advanceis made to step 4-5.

Additional advantages and modifications will readily occur to thoseskilled in the art.

Therefore, the invention in its broader aspects is not limited to thespecific details and representative embodiments shown and describedherein.

Accordingly, various modifications may be made without departing fromthe spirit or scope of the general inventive concepts as defined by theappended claims and their equivalents.

1. A wiring design method for a wiring board, the wiring boardcomprising first connection terminals and second connection terminalsformed on a first surface of the wiring board, the first connectionterminals and the second connection terminals being correlated with eachother one-to-one, the method comprising: connecting the first connectionterminals and the second connection terminals, respectively, on thefirst surface, by using wirings; and conducting design rule check forthe second connection terminals and the wirings, by using an automaticwiring design apparatus; if at least one design rule error is found inan obtained result of the design rule check, selecting one design ruleerror from the obtained result of the design rule check as a selecteddesign rule error; specifying a predetermined number of the secondconnection terminals as selected second connection terminals thatcorrespond to the selected design rule error; moving the selected secondconnection terminals to predetermined coordinate positions on the firstsurface, respectively, to form several connecting patterns; and for eachof connecting patterns, connecting the second connection terminalsincluding the selected second connection terminals and the firstconnection terminals correlated with the second connection terminalsincluding the selected second connection terminals, respectively, on thefirst surface, by using wirings; conducting design rule check for thesecond connection terminals and the wirings; and determining whetherneither design rule errors are detected newly nor the selected designrule error is detected.
 2. The wiring design method for the wiring boardaccording to claim 1, wherein one of the second connection terminals isspecified as the selected second connection terminal that corresponds tothe selected design rule error.
 3. The wiring design method for thewiring board according to claim 1, wherein the followings are repeateduntil neither design rule errors are detected newly nor the selecteddesign rule error is detected, for all of the connecting patterns:connecting the second connection terminals including the selected secondconnection terminals and the first connection terminals correlated withthe second connection terminals including the selected second connectionterminals, respectively, on the first surface, by using wirings;conducting the design rule check for the second connection terminals andthe wirings; and determining whether neither design rule errors aredetected newly nor the selected design rule error is detected.
 4. Thewiring design method for the wiring board according to claim 1, whereinspecifying the predetermined number of the selected second connectionterminals comprising: selecting a predetermined number of the secondconnection terminals from the second connection terminals as tentativeselected second connection terminals; deleting the tentative selectedsecond connection terminals; connecting remaining second connectionterminals and the first connection terminals correlated with theremaining second connection terminals, respectively, on the firstsurface, by using wirings; conducting the design rule check for thesecond connection terminals and the wirings; and determining whether theselected design rule error is detected, to confirm that the selecteddesign rule error is not detected.
 5. The wiring design method for thewiring board according to claim 4, comprising: selecting a predeterminednumber of tentative selected second connection terminals from the secondconnection terminals, the tentative selected second connection terminalsbeing within a predetermined distance from the selected design ruleerror.
 6. The wiring design method for the wiring board according toclaim 5, wherein the followings are repeated until the selected designrule error is not detected, for all of the second connection terminals:selecting a predetermined number of the second connection terminals fromthe second connecting terminals as tentative selected second connectionterminals; deleting the tentative selected second connection terminals;connecting remaining second connection terminals and the firstconnection terminals correlated with the remaining second connectionterminals, respectively, on the first surface, by using wirings;conducting the design rule check for the second connection terminals andthe wirings; and determining whether the selected design rule error isdetected.
 7. The wiring design method for the wiring board according toclaim 1, wherein in the wiring board, the first connection terminals aresemiconductor chip connection terminals that are configured to be ableto connected with chip connection terminals on a semiconductor chip tobe mounted on the first surface; and, the second connection terminalsare configured to be able to electrically connect the first surface sideof the wiring board and a second surface side of the wiring board, thesecond surface side being a back side of the first surface side.
 8. Thewiring design method for the wiring board according to claim 7, whereinin the wiring board, the second surface is mounted thereon with externaldevice connection terminals that are configured to able to be connectedwith external terminals of an external device to which the wiring boardis to be connected.
 9. The wiring design method for the wiring boardaccording to claim 8, wherein in the wiring board, the second connectionterminals are connected with the external device connection terminalscorresponding thereto respectively on the second surface.
 10. The wiringdesign method for the wiring board according to claim 9, wherein in thewiring board, the second connection terminals are constituted as viasconfigured to pass through from the first surface of the wiring board tothe second surface of the wiring board.
 11. The wiring design method forthe wiring board according to claim 10, wherein connecting the secondconnection terminals including the selected second connection terminaland the first connection terminals correlated with the second connectionterminals including the selected second connection terminal,respectively, on the first surface, comprising: connecting the secondconnection terminals including the selected second connection terminaland the external device connection terminals correlated with the secondconnection terminals including the selected second connection terminal,respectively, on the second surface.
 12. The wiring design method forthe wiring board according to claim 10, wherein specifying the selectedsecond connection terminal comprising: selecting a predetermined numberof the second connection terminals from the second connection terminalsas tentative selected second connection terminals; deleting thetentative selected second connection terminals; connecting remainingsecond connection terminals and the first connection terminalscorrelated with the remaining second connection terminals, respectively,on the first surface, by using wirings; conducting the design rule checkfor the remaining second connection terminals and the wirings; anddetermining whether the selected design rule error is detected, toconfirm that the selected design rule error is not detected.
 13. Thewiring design method for the wiring board according to claim 12, whereinconnecting the remaining second connection terminals and the firstconnection terminals correlated with the remaining second connectionterminals, respectively, on the first surface, comprising: connectingremaining vias and the external device connection terminals correlatedwith the remaining vias, respectively, on the second surface.
 14. Awiring design method for a wiring board, the wiring board comprising:semiconductor chip connection terminals formed on a first surface of thewiring board and configured to able to be connected with connectionterminals formed on a semiconductor chip to be mounted on the firstsurface; external device connection terminals formed on a second surfacefacing the first surface of the wiring board and being able to beconnected with connection terminals of an external device to which thewiring board is to be connected; and, vias configured to pass throughfrom the first surface of the wiring board to the second surface of thewiring board, each of vias being correlated with the semiconductor chipconnection terminals one-to-one on the first surface and correlated withthe external device connection terminals one-to-one on the secondsurface, the method comprising: connecting the semiconductor chipconnection terminals and the vias correlated with the semiconductor chipconnection terminals one-to-one, respectively, on the first surface, byusing first wirings; connecting the external device connection terminalsand the vias correlated with the external device connection terminalsone-to-one, respectively, on the second surface, by using secondwirings; and conducting design rule check for the first and secondwirings, and the vias, by using an automatic wiring design apparatus, ifat least one design rule error is found in an obtained result of thedesign rule check, defining the number of the design rule errors thusdetected as a first detected design rule error count; selecting the onedesign rule error from the obtained result of the design rule check as aselected design rule error; selecting one of the vias formed in thewiring board as a selected via; deleting the selected via temporarily;connecting remaining vias and the semiconductor chip connectionterminals correlated with the remaining vias, respectively, on the firstsurface, by using first wirings, and connecting remaining vias and theexternal device connection terminals correlated with the remaining vias,respectively, on the second surface, by using second wirings; conductingthe design rule check for the first and second wirings, and theremaining vias; determining whether the number of the detected designrule errors is smaller than the first detected design rule error count;if the number of the detected design rule errors is smaller than thefirst detected design rule error count, undeleting the deleted selectedvia, and moving the selected via to predetermined coordinate positionson the first surface, respectively, to form several connecting patterns;and for each of the connecting patterns, connecting the vias includingthe selected via and the semiconductor chip connection terminalscorrelated with the vias including the selected via, respectively, onthe first surface, by using first wirings and connecting the viasincluding the selected via and the external device connection terminalscorrelated with the vias including the selected via, respectively, onthe second surface, by using second wirings; conducting the design rulecheck for the first and second wirings, and the vias; and determiningwhether neither design rule errors are detected newly nor the selecteddesign rule error is detected.
 15. The wiring design method for thewiring board according to claim 14, wherein the followings are repeateduntil neither design rule errors are detected newly nor the selecteddesign rule error is detected: connecting the vias including theselected via and the semiconductor chip connection terminals correlatedwith the vias including the selected via, respectively, on the firstsurface, by using first wirings, and connecting the vias including theselected via and the external device connection terminals correlatedwith the vias including the selected via, respectively, on the secondsurface, by using second wirings; conducting the design rule check forthe first and second wirings, and the vias; and determining whetherneither design rule errors are detected newly nor the selected designrule error is detected.
 16. The wiring design method according to claim14, further comprising: repeating the followings for all of the viasformed in the wiring board: selecting one of all of the vias formed inthe wiring board as a selected via; deleting the selected via;connecting remaining vias and the semiconductor chip connectionterminals correlated with the remaining vias, respectively, on the firstsurface, by using first wirings, and connecting the vias and theexternal device connection terminals correlated with the remaining vias,respectively, on the second surface, by using second wirings; conductingthe design rule check for the first and second wirings, and theremaining vias; determining whether the number of the detected designrule errors is smaller than the first detected design rule error count;and undeleting and moving such a selected via to the predeterminedcoordinate positions on the first surface, the such a selected via is avia which give the smallest number of design rule errors as compared tothe first detected design rule error count.
 17. A wiring design methodfor a wiring board, the wiring board comprising: semiconductor chipconnection terminals formed on a first surface of the wiring board andconfigured to able to be connected with connection terminals formed on asemiconductor chip to be mounted on the first surface; external deviceconnection terminals formed on a second surface facing the first surfaceof the wiring board and configured to able to be connected withconnection terminals of an external device to which the wiring board isto be connected; and vias configured to pass through from the firstsurface of the wiring board to the second surface of the wiring board,each of the vias being correlated with each of the semiconductor chipconnection terminals one-to-one on the first surface and correlated witheach of the external device connection terminals one-to-one on thesecond surface, the method comprising: connecting the semiconductorconnection terminals and the vias correlated with the semiconductor chipconnection terminals one-to-one, respectively, on the first surface, byusing first wirings; connecting the external device connection terminalsand the vias correlated with the semiconductor chip connection terminalsone-to-one, respectively, on the second surface, by using secondwirings; and conducting design rule check for the first and secondwirings, and the vias, by using an automatic wiring design apparatus, ifat least one design rule error is found in an obtained result of thedesign rule check, defining the number of the design rule errors thusdetected as a first detected design rule error count; selecting the onedesign rule error from the obtained result of the design rule check as aselected design rule error; selecting one of the vias formed in thewiring board as a selected via; deleting the selected via temporarily;connecting remaining vias and the semiconductor chip connectionterminals correlated with the remaining vias, respectively, on the firstsurface, by using first wirings, and connecting the remaining vias andthe external device connection terminals correlated with the remainingvias, respectively, on the second surface, by using second wirings;conducting the design rule check for the first and second wirings, andthe remaining vias; determining whether the selected design rule erroris detected; if the selected design rule error is not detected,undeleting the deleted selected via, and moving the selected via topredetermined coordinate positions on the first surface, respectively,to form several connecting patterns; and for each connecting patterns,connecting the vias including the selected via and the semiconductorchip connection terminals correlated with the vias including theselected via, respectively, on the first surface, by using firstwirings, and connecting the vias including the selected via and theexternal device connection terminals correlated with the vias includingthe selected via, respectively, on the second surface, by using secondwirings; conducting the design rule check for the first and secondwirings, and the vias; and determining whether the number of thedetected design rule errors is smaller than the first detected designrule error count.
 18. The wiring design method for the wiring boardaccording to claim 17, wherein the followings are repeated until theselected design rule error is not detected: selecting one of the viasformed in the wiring board as a selected via; deleting the selected via;connecting remaining vias and the semiconductor chip connectionterminals correlated with the remaining vias, respectively, on the firstsurface, by using first wirings, and connecting the vias and theexternal device connection terminals correlated with the remaining vias,respectively, on the second surface, by using second wirings; conductingthe design rule check for the first and second wirings, and the vias;and determining whether the selected design rule error is detected. 19.The wiring design method according to claim 17, wherein the followingsare repeated for all of the predetermined coordinate positions: movingthe selected via to the coordinate positions, respectively, to formseveral connecting patterns; and for each of the connecting patterns,connecting the vias including the selected via and the semiconductorchip connection terminals correlated with the vias including theselected via, respectively, on the first surface, by using firstwirings, and connecting the vias including the selected via and theexternal device connection terminals correlated with the vias includingthe selected via, respectively, on the second surface, by using secondwirings; conducting the design rule check for the first and secondwirings, and the vias; and determining whether the number of thedetected design rule errors is smaller than the first detected designrule error count, and moving the selected via to one such of thepredetermined coordinate positions, the such of the predeterminedcoordinate positions is a position which give the smallest number ofdesign rule errors as compared to the first detected design rule errorcount.